//定义整个工程中的state结构
export interface Loading {
  loading: boolean
}

export interface StoreState {
  setting: Setting
  user: User
  menuType: MenuType
  thdemand: SimpleType
  global: GlobalType
  supplier: SupplierInfoType
  band: SimpleType
  typeParam: SimpleType
  newInfo: SimpleType
  apply: PicType
  primary: SimpleType
  eliminate: SimpleType
  secondInstance: SimpleType
  order: OrderType
  ckphoto: PicType
  push: PicType
  audition: PicType
  resolve: PicType
  buyerConfirm: BuyerConfirm
  takeGoods: SimpleType
  oneCheck: PicType
  oneResolve: PicType
  out: SimpleType
  checkStyle: SimpleType
  dataCheck: SimpleType
  secordSubmit: PicType
  cateInfo: CateInfo
  managerApproval: PicType
  secordApproval: PicType
}

export interface GlobalType {
  band: any
  sample: any
  sampleImgs: any
  workStatus: any []
  checkList: any []
  reasonList: any []
  sampleScore: any []
  Hxjcfq:any
  roleScore: any []
  yyhxjx: any []
  dicts: any
  pullData: any []
}

//index相关
export interface Setting extends Loading {
  topMenuIndex: number
  collapsed: boolean
  menuData: Array<MenuType>//菜单信息
  categorys: Array<any>//分类列表
  bands: Array<any>//波段列表
  coopers: Array<any>//合作方式
  centerCategorys: Array<any>
  minCategorys: Array<any>
  venders: Array<any>
  expname:Array<any>
  buyers: Array<any>
  baseInfo: Array<any>
  erpShops: Array<any>
  status: Array<any>
  restatus: Array<any>
  layou:Array<any>
  styles: Array<any>
  colors: Array<any>
  sizes: Array<any>
  photoChecks: Array<any>
  scores: Array<any>
}

//菜单项
export interface MenuType extends Loading {
  id: string,
  name: string
  icon?: string
  path?: string
  hideInMenu?: boolean
  target?: string
  children?: Array<MenuType>
}
//用户信息
export interface User extends Loading {
  id: string
  photo: string
  userName: string
  tureName: string
  venderInfo?: any
  role: string
  token: string
}

//供应商资料
export interface SupplierInfoType extends Loading{
  record: any
}

export interface SimpleType extends Loading {
  record: any
  data: any
}

export interface PicType extends Loading {
  record: any
  list: any []
  type: number
}

export interface OrderType extends Loading {
  data: any
  head: any
  record: any
  detailData: any
}

export interface BuyerConfirm extends Loading {
  list: any [],
  type: number,
  data: any
}

export interface CateInfo extends Loading {
  record: any
  list: any []
  type: number
  data: any
}